package com.canxi.games.service;

import com.canxi.games.domain.CxGamesConfig;
import com.canxi.games.domain.vo.CxGamesConfigVo;
import com.canxi.games.domain.bo.CxGamesConfigBo;
import com.canxi.common.core.page.TableDataInfo;
import com.canxi.common.core.domain.PageQuery;
import icu.mhb.mybatisplus.plugln.base.service.JoinIService;

import java.util.Collection;
import java.util.List;


/**
 * 游戏配置Service接口
 *
 * @author ruoyi
 * @date 2024-08-21
 */
public interface ICxGamesConfigService  extends JoinIService<CxGamesConfig> {

    /**
     * 查询游戏配置
     */
    CxGamesConfigVo queryById(String id);

    /**
     * 查询游戏配置列表
     */
    TableDataInfo<CxGamesConfigVo> queryPageList(CxGamesConfigBo bo, PageQuery pageQuery);

    /**
     * 查询游戏配置列表
     */
    List<CxGamesConfigVo> queryList(CxGamesConfigBo bo);

    /**
     * 新增游戏配置
     */
    Boolean insertByBo(CxGamesConfigBo bo);

    /**
     * 修改游戏配置
     */
    Boolean updateByBo(CxGamesConfigBo bo);

    /**
     * 校验并批量删除游戏配置信息
     */
    Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);

    /**
     * @description: TODO 分页查询游戏配置列表
     * @author: ruoyi
     * @date: 2024-08-21
     * @param:
     * @param: cxGamesConfigVo 游戏配置
     * @return:
     * @return TableDataInfo<CxGamesConfigVo>
     **/
    public TableDataInfo<CxGamesConfigVo> queryCxGamesConfigList(CxGamesConfigBo cxGamesConfigBo);

    /**
     * @description: TODO 查询全部游戏配置列表
     * @author: ruoyi
     * @date: 2024-08-21
     * @param:
     * @param: cxGamesConfigVo 游戏配置
     * @return:
     * @return java.util.List<CxGamesConfigVo>
     **/
    public List<CxGamesConfigVo> queryCxGamesConfigAll(CxGamesConfigBo cxGamesConfigBo);

    public CxGamesConfigVo  getConfigByUserId(CxGamesConfigBo bo);
}
